// MIT License
// 开源地址：https://gitee.com/co1024/AbcMvc
// Copyright (c) 2021-2022 1024
// Abc.Mvc=Furion+EF+SqlSugar+Pear layui admin.

using MiniExcelLibs.Attributes;

namespace Abc.Application.HtAdminServices;

/// <summary>
/// Description 用户表
/// </summary>
public class HtUserOut
{
    ///<Summary>
    /// ID
    ///</Summary>
    [ExcelIgnore]
    public int Id { get; set; }

    ///<Summary>
    /// 用户名
    ///</Summary>
    [ExcelColumnName("用户名")]
    public string Account { get; set; }

    /////<Summary>
    ///// 密码
    /////</Summary>
    //public string Pwd { get; set; }

    ///<Summary>
    /// 账户类型
    ///</Summary>
    [ExcelIgnore]
    public UserType UserType { get; set; }

    ///<Summary>
    /// 账户类型
    ///</Summary>
    [ExcelColumnName("账户类型")]
    public string UserTypeName { get; set; }

    ///<Summary>
    /// 是否启用
    ///</Summary>
    [ExcelIgnore]
    public bool IsEnable { get; set; }

    ///<Summary>
    /// 是否测试
    ///</Summary>
    [ExcelIgnore]
    public bool IsTest { get; set; }

    ///<Summary>
    /// 昵称
    ///</Summary>
    [ExcelColumnName("昵称")]
    public string Nick { get; set; }

    ///<Summary>
    /// 邮箱
    ///</Summary>
    [ExcelColumnName("邮箱")]
    public string Email { get; set; }

    ///<Summary>
    /// 省份
    ///</Summary>
    [ExcelColumnName("省份")]
    public string Province { get; set; }

    ///<Summary>
    /// 城市
    ///</Summary>
    [ExcelColumnName("城市")]
    public string City { get; set; }

    ///<Summary>
    /// 镇
    ///</Summary>
    [ExcelColumnName("镇")]
    public string Town { get; set; }

    ///<Summary>
    /// 详细地址
    ///</Summary>
    [ExcelColumnName("详细地址")]
    public string Address { get; set; }

    ///<Summary>
    /// 联系电话
    ///</Summary>
    [ExcelColumnName("联系电话")]
    public string Phone { get; set; }

    ///<Summary>
    /// 办公电话
    ///</Summary>
    [ExcelColumnName("办公电话")]
    public string Tel { get; set; }

    ///<Summary>
    /// 备注
    ///</Summary>
    [ExcelColumnName("备注")]
    public string Remark { get; set; }

    ///<Summary>
    /// 最后登录时间
    ///</Summary>
    [ExcelColumnName("最后登录时间")]
    public string LastLoginTime { get; set; }

    ///<Summary>
    /// 最后登录IP
    ///</Summary>
    [ExcelColumnName("最后登录IP")]
    public string LastLoginIp { get; set; }

    ///<Summary>
    /// 最后登录用户浏览器信息
    ///</Summary>
    [ExcelColumnName("最后登录用户浏览器信息")]
    public string LastLoginUserAgent { get; set; }

    ///<Summary>
    /// 创建用户ID
    ///</Summary>
    [ExcelIgnore]
    public int CreatorUserId { get; set; }

    ///<Summary>
    /// 创建用户
    ///</Summary>
    [ExcelColumnName("创建用户")]
    public string CreatorUserName { get; set; }

    ///<Summary>
    /// 创建时间
    ///</Summary>
    [ExcelFormat("yyyy/MM/dd HH:mm:ss")]
    [ExcelColumnName("创建时间")]
    public DateTimeOffset CreationTime { get; set; }

    ///<Summary>
    /// 更新用户ID
    ///</Summary>
    [ExcelIgnore]
    public int UpdateUserId { get; set; }

    ///<Summary>
    /// 更新用户
    ///</Summary>
    [ExcelColumnName("更新用户")]
    public string UpdateUserName { get; set; }

    ///<Summary>
    /// 更新时间
    ///</Summary>
    //[ExcelFormat("yyyy/MM/dd HH:mm:ss")]
    [ExcelColumnName("更新时间")]
    public string UpdateTime { get; set; }

    ///<Summary>
    /// 默认假删除
    ///</Summary>
    [ExcelIgnore]
    public bool IsDeleted { get; set; }

    ///<Summary>
    /// 删除用户ID
    ///</Summary>
    [ExcelIgnore]
    public int DeletedUserId { get; set; }

    ///<Summary>
    /// 删除用户
    ///</Summary>
    [ExcelColumnName("删除用户")]
    public string DeletedUserName { get; set; }

    ///<Summary>
    /// 删除时间
    ///</Summary>
    //[ExcelFormat("yyyy/MM/dd HH:mm:ss")]
    [ExcelColumnName("删除时间")]
    public string DeletedTime { get; set; }

    [ExcelIgnore]
    public List<HtRoleOut> Roles { get; set; }

    /// <summary>
    /// 拥有的角色名称
    ///</Summary>
    [ExcelColumnName("拥有的角色名称")]
    public string RoleName { get; set; }
}